/**
 * Notes: 小程序入口文件 (新版API)
 * Ver : WeCollege Server API 1.0.0
 * Date: 2025-01-27
 * Description: 移除云开发初始化，使用自建服务器API
 */

const setting = require('./setting/setting.js');
const apiConfig = require('./setting/api_config.js');

App({
  onLaunch: function (options) {
    console.log('WeCollege 启动，API环境:', apiConfig.CURRENT_ENV);
    console.log('API服务器地址:', apiConfig.baseURL);

    // 移除云开发初始化
    // 不再需要 wx.cloud.init()

    this.globalData = {};

    // 用于自定义导航栏
    wx.getSystemInfo({
      success: e => {
        this.globalData.statusBarHeight = e.statusBarHeight;
        let capsule = wx.getMenuButtonBoundingClientRect();
        if (capsule) {
          this.globalData.customBarHeight = capsule.bottom + capsule.top - e.statusBarHeight;
          this.globalData.capsule = capsule;
        } else {
          this.globalData.customBarHeight = e.statusBarHeight + 50;
        }
      }
    });

    // 检查API服务器连接
    this._checkApiConnection();
  },

  onShow: function (options) {
    // 小程序显示时的逻辑
  },

  onHide: function () {
    // 小程序隐藏时的逻辑
  },

  onError: function (msg) {
    console.error('小程序错误:', msg);
  },

  /**
   * 检查API服务器连接
   */
  _checkApiConnection: function () {
    if (apiConfig.debug) {
      wx.request({
        url: `${apiConfig.baseURL}/api/common/health`,
        method: 'GET',
        timeout: 5000,
        success: (res) => {
          if (res.statusCode === 200) {
            console.log('API服务器连接正常');
          } else {
            console.warn('API服务器响应异常:', res.statusCode);
          }
        },
        fail: (err) => {
          console.error('API服务器连接失败:', err);
          if (apiConfig.debug) {
            wx.showModal({
              title: '网络提示',
              content: `无法连接到API服务器 (${apiConfig.baseURL})，请检查网络设置或联系管理员`,
              showCancel: false
            });
          }
        }
      });
    }
  },

  /**
   * 全局数据
   */
  globalData: {
    statusBarHeight: 0,
    customBarHeight: 0,
    capsule: null
  }
});